package com.autohome.wz.business.order.model;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class OrderExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public OrderExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andOrdernumIsNull() {
            addCriterion("ordernum is null");
            return (Criteria) this;
        }

        public Criteria andOrdernumIsNotNull() {
            addCriterion("ordernum is not null");
            return (Criteria) this;
        }

        public Criteria andOrdernumEqualTo(String value) {
            addCriterion("ordernum =", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotEqualTo(String value) {
            addCriterion("ordernum <>", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumGreaterThan(String value) {
            addCriterion("ordernum >", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumGreaterThanOrEqualTo(String value) {
            addCriterion("ordernum >=", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumLessThan(String value) {
            addCriterion("ordernum <", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumLessThanOrEqualTo(String value) {
            addCriterion("ordernum <=", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumLike(String value) {
            addCriterion("ordernum like", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotLike(String value) {
            addCriterion("ordernum not like", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumIn(List<String> values) {
            addCriterion("ordernum in", values, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotIn(List<String> values) {
            addCriterion("ordernum not in", values, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumBetween(String value1, String value2) {
            addCriterion("ordernum between", value1, value2, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotBetween(String value1, String value2) {
            addCriterion("ordernum not between", value1, value2, "ordernum");
            return (Criteria) this;
        }

        public Criteria andBuyeridIsNull() {
            addCriterion("buyerid is null");
            return (Criteria) this;
        }

        public Criteria andBuyeridIsNotNull() {
            addCriterion("buyerid is not null");
            return (Criteria) this;
        }

        public Criteria andBuyeridEqualTo(Integer value) {
            addCriterion("buyerid =", value, "buyerid");
            return (Criteria) this;
        }

        public Criteria andBuyeridNotEqualTo(Integer value) {
            addCriterion("buyerid <>", value, "buyerid");
            return (Criteria) this;
        }

        public Criteria andBuyeridGreaterThan(Integer value) {
            addCriterion("buyerid >", value, "buyerid");
            return (Criteria) this;
        }

        public Criteria andBuyeridGreaterThanOrEqualTo(Integer value) {
            addCriterion("buyerid >=", value, "buyerid");
            return (Criteria) this;
        }

        public Criteria andBuyeridLessThan(Integer value) {
            addCriterion("buyerid <", value, "buyerid");
            return (Criteria) this;
        }

        public Criteria andBuyeridLessThanOrEqualTo(Integer value) {
            addCriterion("buyerid <=", value, "buyerid");
            return (Criteria) this;
        }

        public Criteria andBuyeridIn(List<Integer> values) {
            addCriterion("buyerid in", values, "buyerid");
            return (Criteria) this;
        }

        public Criteria andBuyeridNotIn(List<Integer> values) {
            addCriterion("buyerid not in", values, "buyerid");
            return (Criteria) this;
        }

        public Criteria andBuyeridBetween(Integer value1, Integer value2) {
            addCriterion("buyerid between", value1, value2, "buyerid");
            return (Criteria) this;
        }

        public Criteria andBuyeridNotBetween(Integer value1, Integer value2) {
            addCriterion("buyerid not between", value1, value2, "buyerid");
            return (Criteria) this;
        }

        public Criteria andBuytimeIsNull() {
            addCriterion("buytime is null");
            return (Criteria) this;
        }

        public Criteria andBuytimeIsNotNull() {
            addCriterion("buytime is not null");
            return (Criteria) this;
        }

        public Criteria andBuytimeEqualTo(Date value) {
            addCriterion("buytime =", value, "buytime");
            return (Criteria) this;
        }

        public Criteria andBuytimeNotEqualTo(Date value) {
            addCriterion("buytime <>", value, "buytime");
            return (Criteria) this;
        }

        public Criteria andBuytimeGreaterThan(Date value) {
            addCriterion("buytime >", value, "buytime");
            return (Criteria) this;
        }

        public Criteria andBuytimeGreaterThanOrEqualTo(Date value) {
            addCriterion("buytime >=", value, "buytime");
            return (Criteria) this;
        }

        public Criteria andBuytimeLessThan(Date value) {
            addCriterion("buytime <", value, "buytime");
            return (Criteria) this;
        }

        public Criteria andBuytimeLessThanOrEqualTo(Date value) {
            addCriterion("buytime <=", value, "buytime");
            return (Criteria) this;
        }

        public Criteria andBuytimeIn(List<Date> values) {
            addCriterion("buytime in", values, "buytime");
            return (Criteria) this;
        }

        public Criteria andBuytimeNotIn(List<Date> values) {
            addCriterion("buytime not in", values, "buytime");
            return (Criteria) this;
        }

        public Criteria andBuytimeBetween(Date value1, Date value2) {
            addCriterion("buytime between", value1, value2, "buytime");
            return (Criteria) this;
        }

        public Criteria andBuytimeNotBetween(Date value1, Date value2) {
            addCriterion("buytime not between", value1, value2, "buytime");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeIsNull() {
            addCriterion("expirationtime is null");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeIsNotNull() {
            addCriterion("expirationtime is not null");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeEqualTo(Date value) {
            addCriterion("expirationtime =", value, "expirationtime");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeNotEqualTo(Date value) {
            addCriterion("expirationtime <>", value, "expirationtime");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeGreaterThan(Date value) {
            addCriterion("expirationtime >", value, "expirationtime");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeGreaterThanOrEqualTo(Date value) {
            addCriterion("expirationtime >=", value, "expirationtime");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeLessThan(Date value) {
            addCriterion("expirationtime <", value, "expirationtime");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeLessThanOrEqualTo(Date value) {
            addCriterion("expirationtime <=", value, "expirationtime");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeIn(List<Date> values) {
            addCriterion("expirationtime in", values, "expirationtime");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeNotIn(List<Date> values) {
            addCriterion("expirationtime not in", values, "expirationtime");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeBetween(Date value1, Date value2) {
            addCriterion("expirationtime between", value1, value2, "expirationtime");
            return (Criteria) this;
        }

        public Criteria andExpirationtimeNotBetween(Date value1, Date value2) {
            addCriterion("expirationtime not between", value1, value2, "expirationtime");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("remark is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("remark is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("remark =", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("remark <>", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("remark >", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("remark >=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("remark <", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("remark <=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("remark like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("remark not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("remark in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("remark not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("remark between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("remark not between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andClientipIsNull() {
            addCriterion("clientip is null");
            return (Criteria) this;
        }

        public Criteria andClientipIsNotNull() {
            addCriterion("clientip is not null");
            return (Criteria) this;
        }

        public Criteria andClientipEqualTo(Long value) {
            addCriterion("clientip =", value, "clientip");
            return (Criteria) this;
        }

        public Criteria andClientipNotEqualTo(Long value) {
            addCriterion("clientip <>", value, "clientip");
            return (Criteria) this;
        }

        public Criteria andClientipGreaterThan(Long value) {
            addCriterion("clientip >", value, "clientip");
            return (Criteria) this;
        }

        public Criteria andClientipGreaterThanOrEqualTo(Long value) {
            addCriterion("clientip >=", value, "clientip");
            return (Criteria) this;
        }

        public Criteria andClientipLessThan(Long value) {
            addCriterion("clientip <", value, "clientip");
            return (Criteria) this;
        }

        public Criteria andClientipLessThanOrEqualTo(Long value) {
            addCriterion("clientip <=", value, "clientip");
            return (Criteria) this;
        }

        public Criteria andClientipIn(List<Long> values) {
            addCriterion("clientip in", values, "clientip");
            return (Criteria) this;
        }

        public Criteria andClientipNotIn(List<Long> values) {
            addCriterion("clientip not in", values, "clientip");
            return (Criteria) this;
        }

        public Criteria andClientipBetween(Long value1, Long value2) {
            addCriterion("clientip between", value1, value2, "clientip");
            return (Criteria) this;
        }

        public Criteria andClientipNotBetween(Long value1, Long value2) {
            addCriterion("clientip not between", value1, value2, "clientip");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("type is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("type is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(Integer value) {
            addCriterion("type =", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(Integer value) {
            addCriterion("type <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(Integer value) {
            addCriterion("type >", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("type >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(Integer value) {
            addCriterion("type <", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(Integer value) {
            addCriterion("type <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<Integer> values) {
            addCriterion("type in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<Integer> values) {
            addCriterion("type not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(Integer value1, Integer value2) {
            addCriterion("type between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("type not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andIdcodeIsNull() {
            addCriterion("idcode is null");
            return (Criteria) this;
        }

        public Criteria andIdcodeIsNotNull() {
            addCriterion("idcode is not null");
            return (Criteria) this;
        }

        public Criteria andIdcodeEqualTo(String value) {
            addCriterion("idcode =", value, "idcode");
            return (Criteria) this;
        }

        public Criteria andIdcodeNotEqualTo(String value) {
            addCriterion("idcode <>", value, "idcode");
            return (Criteria) this;
        }

        public Criteria andIdcodeGreaterThan(String value) {
            addCriterion("idcode >", value, "idcode");
            return (Criteria) this;
        }

        public Criteria andIdcodeGreaterThanOrEqualTo(String value) {
            addCriterion("idcode >=", value, "idcode");
            return (Criteria) this;
        }

        public Criteria andIdcodeLessThan(String value) {
            addCriterion("idcode <", value, "idcode");
            return (Criteria) this;
        }

        public Criteria andIdcodeLessThanOrEqualTo(String value) {
            addCriterion("idcode <=", value, "idcode");
            return (Criteria) this;
        }

        public Criteria andIdcodeLike(String value) {
            addCriterion("idcode like", value, "idcode");
            return (Criteria) this;
        }

        public Criteria andIdcodeNotLike(String value) {
            addCriterion("idcode not like", value, "idcode");
            return (Criteria) this;
        }

        public Criteria andIdcodeIn(List<String> values) {
            addCriterion("idcode in", values, "idcode");
            return (Criteria) this;
        }

        public Criteria andIdcodeNotIn(List<String> values) {
            addCriterion("idcode not in", values, "idcode");
            return (Criteria) this;
        }

        public Criteria andIdcodeBetween(String value1, String value2) {
            addCriterion("idcode between", value1, value2, "idcode");
            return (Criteria) this;
        }

        public Criteria andIdcodeNotBetween(String value1, String value2) {
            addCriterion("idcode not between", value1, value2, "idcode");
            return (Criteria) this;
        }

        public Criteria andSelleridIsNull() {
            addCriterion("sellerid is null");
            return (Criteria) this;
        }

        public Criteria andSelleridIsNotNull() {
            addCriterion("sellerid is not null");
            return (Criteria) this;
        }

        public Criteria andSelleridEqualTo(Integer value) {
            addCriterion("sellerid =", value, "sellerid");
            return (Criteria) this;
        }

        public Criteria andSelleridNotEqualTo(Integer value) {
            addCriterion("sellerid <>", value, "sellerid");
            return (Criteria) this;
        }

        public Criteria andSelleridGreaterThan(Integer value) {
            addCriterion("sellerid >", value, "sellerid");
            return (Criteria) this;
        }

        public Criteria andSelleridGreaterThanOrEqualTo(Integer value) {
            addCriterion("sellerid >=", value, "sellerid");
            return (Criteria) this;
        }

        public Criteria andSelleridLessThan(Integer value) {
            addCriterion("sellerid <", value, "sellerid");
            return (Criteria) this;
        }

        public Criteria andSelleridLessThanOrEqualTo(Integer value) {
            addCriterion("sellerid <=", value, "sellerid");
            return (Criteria) this;
        }

        public Criteria andSelleridIn(List<Integer> values) {
            addCriterion("sellerid in", values, "sellerid");
            return (Criteria) this;
        }

        public Criteria andSelleridNotIn(List<Integer> values) {
            addCriterion("sellerid not in", values, "sellerid");
            return (Criteria) this;
        }

        public Criteria andSelleridBetween(Integer value1, Integer value2) {
            addCriterion("sellerid between", value1, value2, "sellerid");
            return (Criteria) this;
        }

        public Criteria andSelleridNotBetween(Integer value1, Integer value2) {
            addCriterion("sellerid not between", value1, value2, "sellerid");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoIsNull() {
            addCriterion("pay_trade_no is null");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoIsNotNull() {
            addCriterion("pay_trade_no is not null");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoEqualTo(String value) {
            addCriterion("pay_trade_no =", value, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoNotEqualTo(String value) {
            addCriterion("pay_trade_no <>", value, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoGreaterThan(String value) {
            addCriterion("pay_trade_no >", value, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoGreaterThanOrEqualTo(String value) {
            addCriterion("pay_trade_no >=", value, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoLessThan(String value) {
            addCriterion("pay_trade_no <", value, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoLessThanOrEqualTo(String value) {
            addCriterion("pay_trade_no <=", value, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoLike(String value) {
            addCriterion("pay_trade_no like", value, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoNotLike(String value) {
            addCriterion("pay_trade_no not like", value, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoIn(List<String> values) {
            addCriterion("pay_trade_no in", values, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoNotIn(List<String> values) {
            addCriterion("pay_trade_no not in", values, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoBetween(String value1, String value2) {
            addCriterion("pay_trade_no between", value1, value2, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoNotBetween(String value1, String value2) {
            addCriterion("pay_trade_no not between", value1, value2, "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeIsNull() {
            addCriterion("ext_idcode is null");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeIsNotNull() {
            addCriterion("ext_idcode is not null");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeEqualTo(String value) {
            addCriterion("ext_idcode =", value, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeNotEqualTo(String value) {
            addCriterion("ext_idcode <>", value, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeGreaterThan(String value) {
            addCriterion("ext_idcode >", value, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeGreaterThanOrEqualTo(String value) {
            addCriterion("ext_idcode >=", value, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeLessThan(String value) {
            addCriterion("ext_idcode <", value, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeLessThanOrEqualTo(String value) {
            addCriterion("ext_idcode <=", value, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeLike(String value) {
            addCriterion("ext_idcode like", value, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeNotLike(String value) {
            addCriterion("ext_idcode not like", value, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeIn(List<String> values) {
            addCriterion("ext_idcode in", values, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeNotIn(List<String> values) {
            addCriterion("ext_idcode not in", values, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeBetween(String value1, String value2) {
            addCriterion("ext_idcode between", value1, value2, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeNotBetween(String value1, String value2) {
            addCriterion("ext_idcode not between", value1, value2, "extIdcode");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoIsNull() {
            addCriterion("additional_info is null");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoIsNotNull() {
            addCriterion("additional_info is not null");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoEqualTo(String value) {
            addCriterion("additional_info =", value, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoNotEqualTo(String value) {
            addCriterion("additional_info <>", value, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoGreaterThan(String value) {
            addCriterion("additional_info >", value, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoGreaterThanOrEqualTo(String value) {
            addCriterion("additional_info >=", value, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoLessThan(String value) {
            addCriterion("additional_info <", value, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoLessThanOrEqualTo(String value) {
            addCriterion("additional_info <=", value, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoLike(String value) {
            addCriterion("additional_info like", value, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoNotLike(String value) {
            addCriterion("additional_info not like", value, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoIn(List<String> values) {
            addCriterion("additional_info in", values, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoNotIn(List<String> values) {
            addCriterion("additional_info not in", values, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoBetween(String value1, String value2) {
            addCriterion("additional_info between", value1, value2, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoNotBetween(String value1, String value2) {
            addCriterion("additional_info not between", value1, value2, "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andBuyernameIsNull() {
            addCriterion("buyername is null");
            return (Criteria) this;
        }

        public Criteria andBuyernameIsNotNull() {
            addCriterion("buyername is not null");
            return (Criteria) this;
        }

        public Criteria andBuyernameEqualTo(String value) {
            addCriterion("buyername =", value, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyernameNotEqualTo(String value) {
            addCriterion("buyername <>", value, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyernameGreaterThan(String value) {
            addCriterion("buyername >", value, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyernameGreaterThanOrEqualTo(String value) {
            addCriterion("buyername >=", value, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyernameLessThan(String value) {
            addCriterion("buyername <", value, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyernameLessThanOrEqualTo(String value) {
            addCriterion("buyername <=", value, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyernameLike(String value) {
            addCriterion("buyername like", value, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyernameNotLike(String value) {
            addCriterion("buyername not like", value, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyernameIn(List<String> values) {
            addCriterion("buyername in", values, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyernameNotIn(List<String> values) {
            addCriterion("buyername not in", values, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyernameBetween(String value1, String value2) {
            addCriterion("buyername between", value1, value2, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyernameNotBetween(String value1, String value2) {
            addCriterion("buyername not between", value1, value2, "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneIsNull() {
            addCriterion("buyerphone is null");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneIsNotNull() {
            addCriterion("buyerphone is not null");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEqualTo(String value) {
            addCriterion("buyerphone =", value, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneNotEqualTo(String value) {
            addCriterion("buyerphone <>", value, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneGreaterThan(String value) {
            addCriterion("buyerphone >", value, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneGreaterThanOrEqualTo(String value) {
            addCriterion("buyerphone >=", value, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneLessThan(String value) {
            addCriterion("buyerphone <", value, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneLessThanOrEqualTo(String value) {
            addCriterion("buyerphone <=", value, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneLike(String value) {
            addCriterion("buyerphone like", value, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneNotLike(String value) {
            addCriterion("buyerphone not like", value, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneIn(List<String> values) {
            addCriterion("buyerphone in", values, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneNotIn(List<String> values) {
            addCriterion("buyerphone not in", values, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneBetween(String value1, String value2) {
            addCriterion("buyerphone between", value1, value2, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneNotBetween(String value1, String value2) {
            addCriterion("buyerphone not between", value1, value2, "buyerphone");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeIsNull() {
            addCriterion("finishedtime is null");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeIsNotNull() {
            addCriterion("finishedtime is not null");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeEqualTo(Date value) {
            addCriterion("finishedtime =", value, "finishedtime");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeNotEqualTo(Date value) {
            addCriterion("finishedtime <>", value, "finishedtime");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeGreaterThan(Date value) {
            addCriterion("finishedtime >", value, "finishedtime");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeGreaterThanOrEqualTo(Date value) {
            addCriterion("finishedtime >=", value, "finishedtime");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeLessThan(Date value) {
            addCriterion("finishedtime <", value, "finishedtime");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeLessThanOrEqualTo(Date value) {
            addCriterion("finishedtime <=", value, "finishedtime");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeIn(List<Date> values) {
            addCriterion("finishedtime in", values, "finishedtime");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeNotIn(List<Date> values) {
            addCriterion("finishedtime not in", values, "finishedtime");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeBetween(Date value1, Date value2) {
            addCriterion("finishedtime between", value1, value2, "finishedtime");
            return (Criteria) this;
        }

        public Criteria andFinishedtimeNotBetween(Date value1, Date value2) {
            addCriterion("finishedtime not between", value1, value2, "finishedtime");
            return (Criteria) this;
        }

        public Criteria andPaytimeIsNull() {
            addCriterion("paytime is null");
            return (Criteria) this;
        }

        public Criteria andPaytimeIsNotNull() {
            addCriterion("paytime is not null");
            return (Criteria) this;
        }

        public Criteria andPaytimeEqualTo(Date value) {
            addCriterion("paytime =", value, "paytime");
            return (Criteria) this;
        }

        public Criteria andPaytimeNotEqualTo(Date value) {
            addCriterion("paytime <>", value, "paytime");
            return (Criteria) this;
        }

        public Criteria andPaytimeGreaterThan(Date value) {
            addCriterion("paytime >", value, "paytime");
            return (Criteria) this;
        }

        public Criteria andPaytimeGreaterThanOrEqualTo(Date value) {
            addCriterion("paytime >=", value, "paytime");
            return (Criteria) this;
        }

        public Criteria andPaytimeLessThan(Date value) {
            addCriterion("paytime <", value, "paytime");
            return (Criteria) this;
        }

        public Criteria andPaytimeLessThanOrEqualTo(Date value) {
            addCriterion("paytime <=", value, "paytime");
            return (Criteria) this;
        }

        public Criteria andPaytimeIn(List<Date> values) {
            addCriterion("paytime in", values, "paytime");
            return (Criteria) this;
        }

        public Criteria andPaytimeNotIn(List<Date> values) {
            addCriterion("paytime not in", values, "paytime");
            return (Criteria) this;
        }

        public Criteria andPaytimeBetween(Date value1, Date value2) {
            addCriterion("paytime between", value1, value2, "paytime");
            return (Criteria) this;
        }

        public Criteria andPaytimeNotBetween(Date value1, Date value2) {
            addCriterion("paytime not between", value1, value2, "paytime");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeIsNull() {
            addCriterion("processing_time is null");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeIsNotNull() {
            addCriterion("processing_time is not null");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeEqualTo(Date value) {
            addCriterion("processing_time =", value, "processingTime");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeNotEqualTo(Date value) {
            addCriterion("processing_time <>", value, "processingTime");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeGreaterThan(Date value) {
            addCriterion("processing_time >", value, "processingTime");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("processing_time >=", value, "processingTime");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeLessThan(Date value) {
            addCriterion("processing_time <", value, "processingTime");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeLessThanOrEqualTo(Date value) {
            addCriterion("processing_time <=", value, "processingTime");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeIn(List<Date> values) {
            addCriterion("processing_time in", values, "processingTime");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeNotIn(List<Date> values) {
            addCriterion("processing_time not in", values, "processingTime");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeBetween(Date value1, Date value2) {
            addCriterion("processing_time between", value1, value2, "processingTime");
            return (Criteria) this;
        }

        public Criteria andProcessingTimeNotBetween(Date value1, Date value2) {
            addCriterion("processing_time not between", value1, value2, "processingTime");
            return (Criteria) this;
        }

        public Criteria andExt1IsNull() {
            addCriterion("ext1 is null");
            return (Criteria) this;
        }

        public Criteria andExt1IsNotNull() {
            addCriterion("ext1 is not null");
            return (Criteria) this;
        }

        public Criteria andExt1EqualTo(String value) {
            addCriterion("ext1 =", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1NotEqualTo(String value) {
            addCriterion("ext1 <>", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1GreaterThan(String value) {
            addCriterion("ext1 >", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1GreaterThanOrEqualTo(String value) {
            addCriterion("ext1 >=", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1LessThan(String value) {
            addCriterion("ext1 <", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1LessThanOrEqualTo(String value) {
            addCriterion("ext1 <=", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1Like(String value) {
            addCriterion("ext1 like", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1NotLike(String value) {
            addCriterion("ext1 not like", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1In(List<String> values) {
            addCriterion("ext1 in", values, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1NotIn(List<String> values) {
            addCriterion("ext1 not in", values, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1Between(String value1, String value2) {
            addCriterion("ext1 between", value1, value2, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1NotBetween(String value1, String value2) {
            addCriterion("ext1 not between", value1, value2, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt2IsNull() {
            addCriterion("ext2 is null");
            return (Criteria) this;
        }

        public Criteria andExt2IsNotNull() {
            addCriterion("ext2 is not null");
            return (Criteria) this;
        }

        public Criteria andExt2EqualTo(String value) {
            addCriterion("ext2 =", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2NotEqualTo(String value) {
            addCriterion("ext2 <>", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2GreaterThan(String value) {
            addCriterion("ext2 >", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2GreaterThanOrEqualTo(String value) {
            addCriterion("ext2 >=", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2LessThan(String value) {
            addCriterion("ext2 <", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2LessThanOrEqualTo(String value) {
            addCriterion("ext2 <=", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2Like(String value) {
            addCriterion("ext2 like", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2NotLike(String value) {
            addCriterion("ext2 not like", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2In(List<String> values) {
            addCriterion("ext2 in", values, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2NotIn(List<String> values) {
            addCriterion("ext2 not in", values, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2Between(String value1, String value2) {
            addCriterion("ext2 between", value1, value2, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2NotBetween(String value1, String value2) {
            addCriterion("ext2 not between", value1, value2, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt3IsNull() {
            addCriterion("ext3 is null");
            return (Criteria) this;
        }

        public Criteria andExt3IsNotNull() {
            addCriterion("ext3 is not null");
            return (Criteria) this;
        }

        public Criteria andExt3EqualTo(String value) {
            addCriterion("ext3 =", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3NotEqualTo(String value) {
            addCriterion("ext3 <>", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3GreaterThan(String value) {
            addCriterion("ext3 >", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3GreaterThanOrEqualTo(String value) {
            addCriterion("ext3 >=", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3LessThan(String value) {
            addCriterion("ext3 <", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3LessThanOrEqualTo(String value) {
            addCriterion("ext3 <=", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3Like(String value) {
            addCriterion("ext3 like", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3NotLike(String value) {
            addCriterion("ext3 not like", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3In(List<String> values) {
            addCriterion("ext3 in", values, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3NotIn(List<String> values) {
            addCriterion("ext3 not in", values, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3Between(String value1, String value2) {
            addCriterion("ext3 between", value1, value2, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3NotBetween(String value1, String value2) {
            addCriterion("ext3 not between", value1, value2, "ext3");
            return (Criteria) this;
        }

        public Criteria andSysVersionIsNull() {
            addCriterion("sys_version is null");
            return (Criteria) this;
        }

        public Criteria andSysVersionIsNotNull() {
            addCriterion("sys_version is not null");
            return (Criteria) this;
        }

        public Criteria andSysVersionEqualTo(Integer value) {
            addCriterion("sys_version =", value, "sysVersion");
            return (Criteria) this;
        }

        public Criteria andSysVersionNotEqualTo(Integer value) {
            addCriterion("sys_version <>", value, "sysVersion");
            return (Criteria) this;
        }

        public Criteria andSysVersionGreaterThan(Integer value) {
            addCriterion("sys_version >", value, "sysVersion");
            return (Criteria) this;
        }

        public Criteria andSysVersionGreaterThanOrEqualTo(Integer value) {
            addCriterion("sys_version >=", value, "sysVersion");
            return (Criteria) this;
        }

        public Criteria andSysVersionLessThan(Integer value) {
            addCriterion("sys_version <", value, "sysVersion");
            return (Criteria) this;
        }

        public Criteria andSysVersionLessThanOrEqualTo(Integer value) {
            addCriterion("sys_version <=", value, "sysVersion");
            return (Criteria) this;
        }

        public Criteria andSysVersionIn(List<Integer> values) {
            addCriterion("sys_version in", values, "sysVersion");
            return (Criteria) this;
        }

        public Criteria andSysVersionNotIn(List<Integer> values) {
            addCriterion("sys_version not in", values, "sysVersion");
            return (Criteria) this;
        }

        public Criteria andSysVersionBetween(Integer value1, Integer value2) {
            addCriterion("sys_version between", value1, value2, "sysVersion");
            return (Criteria) this;
        }

        public Criteria andSysVersionNotBetween(Integer value1, Integer value2) {
            addCriterion("sys_version not between", value1, value2, "sysVersion");
            return (Criteria) this;
        }

        public Criteria andSysPlatformIsNull() {
            addCriterion("sys_platform is null");
            return (Criteria) this;
        }

        public Criteria andSysPlatformIsNotNull() {
            addCriterion("sys_platform is not null");
            return (Criteria) this;
        }

        public Criteria andSysPlatformEqualTo(Integer value) {
            addCriterion("sys_platform =", value, "sysPlatform");
            return (Criteria) this;
        }

        public Criteria andSysPlatformNotEqualTo(Integer value) {
            addCriterion("sys_platform <>", value, "sysPlatform");
            return (Criteria) this;
        }

        public Criteria andSysPlatformGreaterThan(Integer value) {
            addCriterion("sys_platform >", value, "sysPlatform");
            return (Criteria) this;
        }

        public Criteria andSysPlatformGreaterThanOrEqualTo(Integer value) {
            addCriterion("sys_platform >=", value, "sysPlatform");
            return (Criteria) this;
        }

        public Criteria andSysPlatformLessThan(Integer value) {
            addCriterion("sys_platform <", value, "sysPlatform");
            return (Criteria) this;
        }

        public Criteria andSysPlatformLessThanOrEqualTo(Integer value) {
            addCriterion("sys_platform <=", value, "sysPlatform");
            return (Criteria) this;
        }

        public Criteria andSysPlatformIn(List<Integer> values) {
            addCriterion("sys_platform in", values, "sysPlatform");
            return (Criteria) this;
        }

        public Criteria andSysPlatformNotIn(List<Integer> values) {
            addCriterion("sys_platform not in", values, "sysPlatform");
            return (Criteria) this;
        }

        public Criteria andSysPlatformBetween(Integer value1, Integer value2) {
            addCriterion("sys_platform between", value1, value2, "sysPlatform");
            return (Criteria) this;
        }

        public Criteria andSysPlatformNotBetween(Integer value1, Integer value2) {
            addCriterion("sys_platform not between", value1, value2, "sysPlatform");
            return (Criteria) this;
        }

        public Criteria andSourceIsNull() {
            addCriterion("source is null");
            return (Criteria) this;
        }

        public Criteria andSourceIsNotNull() {
            addCriterion("source is not null");
            return (Criteria) this;
        }

        public Criteria andSourceEqualTo(String value) {
            addCriterion("source =", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotEqualTo(String value) {
            addCriterion("source <>", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceGreaterThan(String value) {
            addCriterion("source >", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceGreaterThanOrEqualTo(String value) {
            addCriterion("source >=", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLessThan(String value) {
            addCriterion("source <", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLessThanOrEqualTo(String value) {
            addCriterion("source <=", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLike(String value) {
            addCriterion("source like", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotLike(String value) {
            addCriterion("source not like", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceIn(List<String> values) {
            addCriterion("source in", values, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotIn(List<String> values) {
            addCriterion("source not in", values, "source");
            return (Criteria) this;
        }

        public Criteria andSourceBetween(String value1, String value2) {
            addCriterion("source between", value1, value2, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotBetween(String value1, String value2) {
            addCriterion("source not between", value1, value2, "source");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampIsNull() {
            addCriterion("updatetimestamp is null");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampIsNotNull() {
            addCriterion("updatetimestamp is not null");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampEqualTo(Long value) {
            addCriterion("updatetimestamp =", value, "updatetimestamp");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampNotEqualTo(Long value) {
            addCriterion("updatetimestamp <>", value, "updatetimestamp");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampGreaterThan(Long value) {
            addCriterion("updatetimestamp >", value, "updatetimestamp");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampGreaterThanOrEqualTo(Long value) {
            addCriterion("updatetimestamp >=", value, "updatetimestamp");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampLessThan(Long value) {
            addCriterion("updatetimestamp <", value, "updatetimestamp");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampLessThanOrEqualTo(Long value) {
            addCriterion("updatetimestamp <=", value, "updatetimestamp");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampIn(List<Long> values) {
            addCriterion("updatetimestamp in", values, "updatetimestamp");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampNotIn(List<Long> values) {
            addCriterion("updatetimestamp not in", values, "updatetimestamp");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampBetween(Long value1, Long value2) {
            addCriterion("updatetimestamp between", value1, value2, "updatetimestamp");
            return (Criteria) this;
        }

        public Criteria andUpdatetimestampNotBetween(Long value1, Long value2) {
            addCriterion("updatetimestamp not between", value1, value2, "updatetimestamp");
            return (Criteria) this;
        }

        public Criteria andChannelIsNull() {
            addCriterion("channel is null");
            return (Criteria) this;
        }

        public Criteria andChannelIsNotNull() {
            addCriterion("channel is not null");
            return (Criteria) this;
        }

        public Criteria andChannelEqualTo(String value) {
            addCriterion("channel =", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelNotEqualTo(String value) {
            addCriterion("channel <>", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelGreaterThan(String value) {
            addCriterion("channel >", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelGreaterThanOrEqualTo(String value) {
            addCriterion("channel >=", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelLessThan(String value) {
            addCriterion("channel <", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelLessThanOrEqualTo(String value) {
            addCriterion("channel <=", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelLike(String value) {
            addCriterion("channel like", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelNotLike(String value) {
            addCriterion("channel not like", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelIn(List<String> values) {
            addCriterion("channel in", values, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelNotIn(List<String> values) {
            addCriterion("channel not in", values, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelBetween(String value1, String value2) {
            addCriterion("channel between", value1, value2, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelNotBetween(String value1, String value2) {
            addCriterion("channel not between", value1, value2, "channel");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdIsNull() {
            addCriterion("user_address_id is null");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdIsNotNull() {
            addCriterion("user_address_id is not null");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdEqualTo(Integer value) {
            addCriterion("user_address_id =", value, "userAddressId");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdNotEqualTo(Integer value) {
            addCriterion("user_address_id <>", value, "userAddressId");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdGreaterThan(Integer value) {
            addCriterion("user_address_id >", value, "userAddressId");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("user_address_id >=", value, "userAddressId");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdLessThan(Integer value) {
            addCriterion("user_address_id <", value, "userAddressId");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdLessThanOrEqualTo(Integer value) {
            addCriterion("user_address_id <=", value, "userAddressId");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdIn(List<Integer> values) {
            addCriterion("user_address_id in", values, "userAddressId");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdNotIn(List<Integer> values) {
            addCriterion("user_address_id not in", values, "userAddressId");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdBetween(Integer value1, Integer value2) {
            addCriterion("user_address_id between", value1, value2, "userAddressId");
            return (Criteria) this;
        }

        public Criteria andUserAddressIdNotBetween(Integer value1, Integer value2) {
            addCriterion("user_address_id not between", value1, value2, "userAddressId");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdIsNull() {
            addCriterion("tech_parnter_id is null");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdIsNotNull() {
            addCriterion("tech_parnter_id is not null");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdEqualTo(Integer value) {
            addCriterion("tech_parnter_id =", value, "techParnterId");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdNotEqualTo(Integer value) {
            addCriterion("tech_parnter_id <>", value, "techParnterId");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdGreaterThan(Integer value) {
            addCriterion("tech_parnter_id >", value, "techParnterId");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("tech_parnter_id >=", value, "techParnterId");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdLessThan(Integer value) {
            addCriterion("tech_parnter_id <", value, "techParnterId");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdLessThanOrEqualTo(Integer value) {
            addCriterion("tech_parnter_id <=", value, "techParnterId");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdIn(List<Integer> values) {
            addCriterion("tech_parnter_id in", values, "techParnterId");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdNotIn(List<Integer> values) {
            addCriterion("tech_parnter_id not in", values, "techParnterId");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdBetween(Integer value1, Integer value2) {
            addCriterion("tech_parnter_id between", value1, value2, "techParnterId");
            return (Criteria) this;
        }

        public Criteria andTechParnterIdNotBetween(Integer value1, Integer value2) {
            addCriterion("tech_parnter_id not between", value1, value2, "techParnterId");
            return (Criteria) this;
        }

        public Criteria andActualpaymentIsNull() {
            addCriterion("actualpayment is null");
            return (Criteria) this;
        }

        public Criteria andActualpaymentIsNotNull() {
            addCriterion("actualpayment is not null");
            return (Criteria) this;
        }

        public Criteria andActualpaymentEqualTo(BigDecimal value) {
            addCriterion("actualpayment =", value, "actualpayment");
            return (Criteria) this;
        }

        public Criteria andActualpaymentNotEqualTo(BigDecimal value) {
            addCriterion("actualpayment <>", value, "actualpayment");
            return (Criteria) this;
        }

        public Criteria andActualpaymentGreaterThan(BigDecimal value) {
            addCriterion("actualpayment >", value, "actualpayment");
            return (Criteria) this;
        }

        public Criteria andActualpaymentGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("actualpayment >=", value, "actualpayment");
            return (Criteria) this;
        }

        public Criteria andActualpaymentLessThan(BigDecimal value) {
            addCriterion("actualpayment <", value, "actualpayment");
            return (Criteria) this;
        }

        public Criteria andActualpaymentLessThanOrEqualTo(BigDecimal value) {
            addCriterion("actualpayment <=", value, "actualpayment");
            return (Criteria) this;
        }

        public Criteria andActualpaymentIn(List<BigDecimal> values) {
            addCriterion("actualpayment in", values, "actualpayment");
            return (Criteria) this;
        }

        public Criteria andActualpaymentNotIn(List<BigDecimal> values) {
            addCriterion("actualpayment not in", values, "actualpayment");
            return (Criteria) this;
        }

        public Criteria andActualpaymentBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("actualpayment between", value1, value2, "actualpayment");
            return (Criteria) this;
        }

        public Criteria andActualpaymentNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("actualpayment not between", value1, value2, "actualpayment");
            return (Criteria) this;
        }

        public Criteria andOrderpriceIsNull() {
            addCriterion("orderprice is null");
            return (Criteria) this;
        }

        public Criteria andOrderpriceIsNotNull() {
            addCriterion("orderprice is not null");
            return (Criteria) this;
        }

        public Criteria andOrderpriceEqualTo(BigDecimal value) {
            addCriterion("orderprice =", value, "orderprice");
            return (Criteria) this;
        }

        public Criteria andOrderpriceNotEqualTo(BigDecimal value) {
            addCriterion("orderprice <>", value, "orderprice");
            return (Criteria) this;
        }

        public Criteria andOrderpriceGreaterThan(BigDecimal value) {
            addCriterion("orderprice >", value, "orderprice");
            return (Criteria) this;
        }

        public Criteria andOrderpriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("orderprice >=", value, "orderprice");
            return (Criteria) this;
        }

        public Criteria andOrderpriceLessThan(BigDecimal value) {
            addCriterion("orderprice <", value, "orderprice");
            return (Criteria) this;
        }

        public Criteria andOrderpriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("orderprice <=", value, "orderprice");
            return (Criteria) this;
        }

        public Criteria andOrderpriceIn(List<BigDecimal> values) {
            addCriterion("orderprice in", values, "orderprice");
            return (Criteria) this;
        }

        public Criteria andOrderpriceNotIn(List<BigDecimal> values) {
            addCriterion("orderprice not in", values, "orderprice");
            return (Criteria) this;
        }

        public Criteria andOrderpriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("orderprice between", value1, value2, "orderprice");
            return (Criteria) this;
        }

        public Criteria andOrderpriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("orderprice not between", value1, value2, "orderprice");
            return (Criteria) this;
        }

        public Criteria andSubnumberIsNull() {
            addCriterion("subnumber is null");
            return (Criteria) this;
        }

        public Criteria andSubnumberIsNotNull() {
            addCriterion("subnumber is not null");
            return (Criteria) this;
        }

        public Criteria andSubnumberEqualTo(Integer value) {
            addCriterion("subnumber =", value, "subnumber");
            return (Criteria) this;
        }

        public Criteria andSubnumberNotEqualTo(Integer value) {
            addCriterion("subnumber <>", value, "subnumber");
            return (Criteria) this;
        }

        public Criteria andSubnumberGreaterThan(Integer value) {
            addCriterion("subnumber >", value, "subnumber");
            return (Criteria) this;
        }

        public Criteria andSubnumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("subnumber >=", value, "subnumber");
            return (Criteria) this;
        }

        public Criteria andSubnumberLessThan(Integer value) {
            addCriterion("subnumber <", value, "subnumber");
            return (Criteria) this;
        }

        public Criteria andSubnumberLessThanOrEqualTo(Integer value) {
            addCriterion("subnumber <=", value, "subnumber");
            return (Criteria) this;
        }

        public Criteria andSubnumberIn(List<Integer> values) {
            addCriterion("subnumber in", values, "subnumber");
            return (Criteria) this;
        }

        public Criteria andSubnumberNotIn(List<Integer> values) {
            addCriterion("subnumber not in", values, "subnumber");
            return (Criteria) this;
        }

        public Criteria andSubnumberBetween(Integer value1, Integer value2) {
            addCriterion("subnumber between", value1, value2, "subnumber");
            return (Criteria) this;
        }

        public Criteria andSubnumberNotBetween(Integer value1, Integer value2) {
            addCriterion("subnumber not between", value1, value2, "subnumber");
            return (Criteria) this;
        }

        public Criteria andOrderRouteIsNull() {
            addCriterion("order_route is null");
            return (Criteria) this;
        }

        public Criteria andOrderRouteIsNotNull() {
            addCriterion("order_route is not null");
            return (Criteria) this;
        }

        public Criteria andOrderRouteEqualTo(String value) {
            addCriterion("order_route =", value, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andOrderRouteNotEqualTo(String value) {
            addCriterion("order_route <>", value, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andOrderRouteGreaterThan(String value) {
            addCriterion("order_route >", value, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andOrderRouteGreaterThanOrEqualTo(String value) {
            addCriterion("order_route >=", value, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andOrderRouteLessThan(String value) {
            addCriterion("order_route <", value, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andOrderRouteLessThanOrEqualTo(String value) {
            addCriterion("order_route <=", value, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andOrderRouteLike(String value) {
            addCriterion("order_route like", value, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andOrderRouteNotLike(String value) {
            addCriterion("order_route not like", value, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andOrderRouteIn(List<String> values) {
            addCriterion("order_route in", values, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andOrderRouteNotIn(List<String> values) {
            addCriterion("order_route not in", values, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andOrderRouteBetween(String value1, String value2) {
            addCriterion("order_route between", value1, value2, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andOrderRouteNotBetween(String value1, String value2) {
            addCriterion("order_route not between", value1, value2, "orderRoute");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnIsNull() {
            addCriterion("buyername_en is null");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnIsNotNull() {
            addCriterion("buyername_en is not null");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnEqualTo(String value) {
            addCriterion("buyername_en =", value, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnNotEqualTo(String value) {
            addCriterion("buyername_en <>", value, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnGreaterThan(String value) {
            addCriterion("buyername_en >", value, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnGreaterThanOrEqualTo(String value) {
            addCriterion("buyername_en >=", value, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnLessThan(String value) {
            addCriterion("buyername_en <", value, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnLessThanOrEqualTo(String value) {
            addCriterion("buyername_en <=", value, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnLike(String value) {
            addCriterion("buyername_en like", value, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnNotLike(String value) {
            addCriterion("buyername_en not like", value, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnIn(List<String> values) {
            addCriterion("buyername_en in", values, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnNotIn(List<String> values) {
            addCriterion("buyername_en not in", values, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnBetween(String value1, String value2) {
            addCriterion("buyername_en between", value1, value2, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnNotBetween(String value1, String value2) {
            addCriterion("buyername_en not between", value1, value2, "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnIsNull() {
            addCriterion("buyerphone_en is null");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnIsNotNull() {
            addCriterion("buyerphone_en is not null");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnEqualTo(String value) {
            addCriterion("buyerphone_en =", value, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnNotEqualTo(String value) {
            addCriterion("buyerphone_en <>", value, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnGreaterThan(String value) {
            addCriterion("buyerphone_en >", value, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnGreaterThanOrEqualTo(String value) {
            addCriterion("buyerphone_en >=", value, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnLessThan(String value) {
            addCriterion("buyerphone_en <", value, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnLessThanOrEqualTo(String value) {
            addCriterion("buyerphone_en <=", value, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnLike(String value) {
            addCriterion("buyerphone_en like", value, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnNotLike(String value) {
            addCriterion("buyerphone_en not like", value, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnIn(List<String> values) {
            addCriterion("buyerphone_en in", values, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnNotIn(List<String> values) {
            addCriterion("buyerphone_en not in", values, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnBetween(String value1, String value2) {
            addCriterion("buyerphone_en between", value1, value2, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnNotBetween(String value1, String value2) {
            addCriterion("buyerphone_en not between", value1, value2, "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashIsNull() {
            addCriterion("buyerphone_hash is null");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashIsNotNull() {
            addCriterion("buyerphone_hash is not null");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashEqualTo(String value) {
            addCriterion("buyerphone_hash =", value, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashNotEqualTo(String value) {
            addCriterion("buyerphone_hash <>", value, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashGreaterThan(String value) {
            addCriterion("buyerphone_hash >", value, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashGreaterThanOrEqualTo(String value) {
            addCriterion("buyerphone_hash >=", value, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashLessThan(String value) {
            addCriterion("buyerphone_hash <", value, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashLessThanOrEqualTo(String value) {
            addCriterion("buyerphone_hash <=", value, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashLike(String value) {
            addCriterion("buyerphone_hash like", value, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashNotLike(String value) {
            addCriterion("buyerphone_hash not like", value, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashIn(List<String> values) {
            addCriterion("buyerphone_hash in", values, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashNotIn(List<String> values) {
            addCriterion("buyerphone_hash not in", values, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashBetween(String value1, String value2) {
            addCriterion("buyerphone_hash between", value1, value2, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashNotBetween(String value1, String value2) {
            addCriterion("buyerphone_hash not between", value1, value2, "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdIsNull() {
            addCriterion("invoice_id is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdIsNotNull() {
            addCriterion("invoice_id is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdEqualTo(Integer value) {
            addCriterion("invoice_id =", value, "invoiceId");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdNotEqualTo(Integer value) {
            addCriterion("invoice_id <>", value, "invoiceId");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdGreaterThan(Integer value) {
            addCriterion("invoice_id >", value, "invoiceId");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("invoice_id >=", value, "invoiceId");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdLessThan(Integer value) {
            addCriterion("invoice_id <", value, "invoiceId");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdLessThanOrEqualTo(Integer value) {
            addCriterion("invoice_id <=", value, "invoiceId");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdIn(List<Integer> values) {
            addCriterion("invoice_id in", values, "invoiceId");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdNotIn(List<Integer> values) {
            addCriterion("invoice_id not in", values, "invoiceId");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdBetween(Integer value1, Integer value2) {
            addCriterion("invoice_id between", value1, value2, "invoiceId");
            return (Criteria) this;
        }

        public Criteria andInvoiceIdNotBetween(Integer value1, Integer value2) {
            addCriterion("invoice_id not between", value1, value2, "invoiceId");
            return (Criteria) this;
        }

        public Criteria andDisaccountIsNull() {
            addCriterion("disaccount is null");
            return (Criteria) this;
        }

        public Criteria andDisaccountIsNotNull() {
            addCriterion("disaccount is not null");
            return (Criteria) this;
        }

        public Criteria andDisaccountEqualTo(Integer value) {
            addCriterion("disaccount =", value, "disaccount");
            return (Criteria) this;
        }

        public Criteria andDisaccountNotEqualTo(Integer value) {
            addCriterion("disaccount <>", value, "disaccount");
            return (Criteria) this;
        }

        public Criteria andDisaccountGreaterThan(Integer value) {
            addCriterion("disaccount >", value, "disaccount");
            return (Criteria) this;
        }

        public Criteria andDisaccountGreaterThanOrEqualTo(Integer value) {
            addCriterion("disaccount >=", value, "disaccount");
            return (Criteria) this;
        }

        public Criteria andDisaccountLessThan(Integer value) {
            addCriterion("disaccount <", value, "disaccount");
            return (Criteria) this;
        }

        public Criteria andDisaccountLessThanOrEqualTo(Integer value) {
            addCriterion("disaccount <=", value, "disaccount");
            return (Criteria) this;
        }

        public Criteria andDisaccountIn(List<Integer> values) {
            addCriterion("disaccount in", values, "disaccount");
            return (Criteria) this;
        }

        public Criteria andDisaccountNotIn(List<Integer> values) {
            addCriterion("disaccount not in", values, "disaccount");
            return (Criteria) this;
        }

        public Criteria andDisaccountBetween(Integer value1, Integer value2) {
            addCriterion("disaccount between", value1, value2, "disaccount");
            return (Criteria) this;
        }

        public Criteria andDisaccountNotBetween(Integer value1, Integer value2) {
            addCriterion("disaccount not between", value1, value2, "disaccount");
            return (Criteria) this;
        }

        public Criteria andPricechannelidIsNull() {
            addCriterion("priceChannelId is null");
            return (Criteria) this;
        }

        public Criteria andPricechannelidIsNotNull() {
            addCriterion("priceChannelId is not null");
            return (Criteria) this;
        }

        public Criteria andPricechannelidEqualTo(Integer value) {
            addCriterion("priceChannelId =", value, "pricechannelid");
            return (Criteria) this;
        }

        public Criteria andPricechannelidNotEqualTo(Integer value) {
            addCriterion("priceChannelId <>", value, "pricechannelid");
            return (Criteria) this;
        }

        public Criteria andPricechannelidGreaterThan(Integer value) {
            addCriterion("priceChannelId >", value, "pricechannelid");
            return (Criteria) this;
        }

        public Criteria andPricechannelidGreaterThanOrEqualTo(Integer value) {
            addCriterion("priceChannelId >=", value, "pricechannelid");
            return (Criteria) this;
        }

        public Criteria andPricechannelidLessThan(Integer value) {
            addCriterion("priceChannelId <", value, "pricechannelid");
            return (Criteria) this;
        }

        public Criteria andPricechannelidLessThanOrEqualTo(Integer value) {
            addCriterion("priceChannelId <=", value, "pricechannelid");
            return (Criteria) this;
        }

        public Criteria andPricechannelidIn(List<Integer> values) {
            addCriterion("priceChannelId in", values, "pricechannelid");
            return (Criteria) this;
        }

        public Criteria andPricechannelidNotIn(List<Integer> values) {
            addCriterion("priceChannelId not in", values, "pricechannelid");
            return (Criteria) this;
        }

        public Criteria andPricechannelidBetween(Integer value1, Integer value2) {
            addCriterion("priceChannelId between", value1, value2, "pricechannelid");
            return (Criteria) this;
        }

        public Criteria andPricechannelidNotBetween(Integer value1, Integer value2) {
            addCriterion("priceChannelId not between", value1, value2, "pricechannelid");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusIsNull() {
            addCriterion("order_extstatus is null");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusIsNotNull() {
            addCriterion("order_extstatus is not null");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusEqualTo(Integer value) {
            addCriterion("order_extstatus =", value, "orderExtstatus");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusNotEqualTo(Integer value) {
            addCriterion("order_extstatus <>", value, "orderExtstatus");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusGreaterThan(Integer value) {
            addCriterion("order_extstatus >", value, "orderExtstatus");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_extstatus >=", value, "orderExtstatus");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusLessThan(Integer value) {
            addCriterion("order_extstatus <", value, "orderExtstatus");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusLessThanOrEqualTo(Integer value) {
            addCriterion("order_extstatus <=", value, "orderExtstatus");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusIn(List<Integer> values) {
            addCriterion("order_extstatus in", values, "orderExtstatus");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusNotIn(List<Integer> values) {
            addCriterion("order_extstatus not in", values, "orderExtstatus");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusBetween(Integer value1, Integer value2) {
            addCriterion("order_extstatus between", value1, value2, "orderExtstatus");
            return (Criteria) this;
        }

        public Criteria andOrderExtstatusNotBetween(Integer value1, Integer value2) {
            addCriterion("order_extstatus not between", value1, value2, "orderExtstatus");
            return (Criteria) this;
        }

        public Criteria andAutouseridIsNull() {
            addCriterion("autoUserId is null");
            return (Criteria) this;
        }

        public Criteria andAutouseridIsNotNull() {
            addCriterion("autoUserId is not null");
            return (Criteria) this;
        }

        public Criteria andAutouseridEqualTo(Integer value) {
            addCriterion("autoUserId =", value, "autouserid");
            return (Criteria) this;
        }

        public Criteria andAutouseridNotEqualTo(Integer value) {
            addCriterion("autoUserId <>", value, "autouserid");
            return (Criteria) this;
        }

        public Criteria andAutouseridGreaterThan(Integer value) {
            addCriterion("autoUserId >", value, "autouserid");
            return (Criteria) this;
        }

        public Criteria andAutouseridGreaterThanOrEqualTo(Integer value) {
            addCriterion("autoUserId >=", value, "autouserid");
            return (Criteria) this;
        }

        public Criteria andAutouseridLessThan(Integer value) {
            addCriterion("autoUserId <", value, "autouserid");
            return (Criteria) this;
        }

        public Criteria andAutouseridLessThanOrEqualTo(Integer value) {
            addCriterion("autoUserId <=", value, "autouserid");
            return (Criteria) this;
        }

        public Criteria andAutouseridIn(List<Integer> values) {
            addCriterion("autoUserId in", values, "autouserid");
            return (Criteria) this;
        }

        public Criteria andAutouseridNotIn(List<Integer> values) {
            addCriterion("autoUserId not in", values, "autouserid");
            return (Criteria) this;
        }

        public Criteria andAutouseridBetween(Integer value1, Integer value2) {
            addCriterion("autoUserId between", value1, value2, "autouserid");
            return (Criteria) this;
        }

        public Criteria andAutouseridNotBetween(Integer value1, Integer value2) {
            addCriterion("autoUserId not between", value1, value2, "autouserid");
            return (Criteria) this;
        }

        public Criteria andAutousernameIsNull() {
            addCriterion("autoUserName is null");
            return (Criteria) this;
        }

        public Criteria andAutousernameIsNotNull() {
            addCriterion("autoUserName is not null");
            return (Criteria) this;
        }

        public Criteria andAutousernameEqualTo(String value) {
            addCriterion("autoUserName =", value, "autousername");
            return (Criteria) this;
        }

        public Criteria andAutousernameNotEqualTo(String value) {
            addCriterion("autoUserName <>", value, "autousername");
            return (Criteria) this;
        }

        public Criteria andAutousernameGreaterThan(String value) {
            addCriterion("autoUserName >", value, "autousername");
            return (Criteria) this;
        }

        public Criteria andAutousernameGreaterThanOrEqualTo(String value) {
            addCriterion("autoUserName >=", value, "autousername");
            return (Criteria) this;
        }

        public Criteria andAutousernameLessThan(String value) {
            addCriterion("autoUserName <", value, "autousername");
            return (Criteria) this;
        }

        public Criteria andAutousernameLessThanOrEqualTo(String value) {
            addCriterion("autoUserName <=", value, "autousername");
            return (Criteria) this;
        }

        public Criteria andAutousernameLike(String value) {
            addCriterion("autoUserName like", value, "autousername");
            return (Criteria) this;
        }

        public Criteria andAutousernameNotLike(String value) {
            addCriterion("autoUserName not like", value, "autousername");
            return (Criteria) this;
        }

        public Criteria andAutousernameIn(List<String> values) {
            addCriterion("autoUserName in", values, "autousername");
            return (Criteria) this;
        }

        public Criteria andAutousernameNotIn(List<String> values) {
            addCriterion("autoUserName not in", values, "autousername");
            return (Criteria) this;
        }

        public Criteria andAutousernameBetween(String value1, String value2) {
            addCriterion("autoUserName between", value1, value2, "autousername");
            return (Criteria) this;
        }

        public Criteria andAutousernameNotBetween(String value1, String value2) {
            addCriterion("autoUserName not between", value1, value2, "autousername");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoIsNull() {
            addCriterion("statisticsInfo is null");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoIsNotNull() {
            addCriterion("statisticsInfo is not null");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoEqualTo(String value) {
            addCriterion("statisticsInfo =", value, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoNotEqualTo(String value) {
            addCriterion("statisticsInfo <>", value, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoGreaterThan(String value) {
            addCriterion("statisticsInfo >", value, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoGreaterThanOrEqualTo(String value) {
            addCriterion("statisticsInfo >=", value, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoLessThan(String value) {
            addCriterion("statisticsInfo <", value, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoLessThanOrEqualTo(String value) {
            addCriterion("statisticsInfo <=", value, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoLike(String value) {
            addCriterion("statisticsInfo like", value, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoNotLike(String value) {
            addCriterion("statisticsInfo not like", value, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoIn(List<String> values) {
            addCriterion("statisticsInfo in", values, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoNotIn(List<String> values) {
            addCriterion("statisticsInfo not in", values, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoBetween(String value1, String value2) {
            addCriterion("statisticsInfo between", value1, value2, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoNotBetween(String value1, String value2) {
            addCriterion("statisticsInfo not between", value1, value2, "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andBatchnoIsNull() {
            addCriterion("batchNo is null");
            return (Criteria) this;
        }

        public Criteria andBatchnoIsNotNull() {
            addCriterion("batchNo is not null");
            return (Criteria) this;
        }

        public Criteria andBatchnoEqualTo(String value) {
            addCriterion("batchNo =", value, "batchno");
            return (Criteria) this;
        }

        public Criteria andBatchnoNotEqualTo(String value) {
            addCriterion("batchNo <>", value, "batchno");
            return (Criteria) this;
        }

        public Criteria andBatchnoGreaterThan(String value) {
            addCriterion("batchNo >", value, "batchno");
            return (Criteria) this;
        }

        public Criteria andBatchnoGreaterThanOrEqualTo(String value) {
            addCriterion("batchNo >=", value, "batchno");
            return (Criteria) this;
        }

        public Criteria andBatchnoLessThan(String value) {
            addCriterion("batchNo <", value, "batchno");
            return (Criteria) this;
        }

        public Criteria andBatchnoLessThanOrEqualTo(String value) {
            addCriterion("batchNo <=", value, "batchno");
            return (Criteria) this;
        }

        public Criteria andBatchnoLike(String value) {
            addCriterion("batchNo like", value, "batchno");
            return (Criteria) this;
        }

        public Criteria andBatchnoNotLike(String value) {
            addCriterion("batchNo not like", value, "batchno");
            return (Criteria) this;
        }

        public Criteria andBatchnoIn(List<String> values) {
            addCriterion("batchNo in", values, "batchno");
            return (Criteria) this;
        }

        public Criteria andBatchnoNotIn(List<String> values) {
            addCriterion("batchNo not in", values, "batchno");
            return (Criteria) this;
        }

        public Criteria andBatchnoBetween(String value1, String value2) {
            addCriterion("batchNo between", value1, value2, "batchno");
            return (Criteria) this;
        }

        public Criteria andBatchnoNotBetween(String value1, String value2) {
            addCriterion("batchNo not between", value1, value2, "batchno");
            return (Criteria) this;
        }

        public Criteria andBuserIdIsNull() {
            addCriterion("buser_id is null");
            return (Criteria) this;
        }

        public Criteria andBuserIdIsNotNull() {
            addCriterion("buser_id is not null");
            return (Criteria) this;
        }

        public Criteria andBuserIdEqualTo(String value) {
            addCriterion("buser_id =", value, "buserId");
            return (Criteria) this;
        }

        public Criteria andBuserIdNotEqualTo(String value) {
            addCriterion("buser_id <>", value, "buserId");
            return (Criteria) this;
        }

        public Criteria andBuserIdGreaterThan(String value) {
            addCriterion("buser_id >", value, "buserId");
            return (Criteria) this;
        }

        public Criteria andBuserIdGreaterThanOrEqualTo(String value) {
            addCriterion("buser_id >=", value, "buserId");
            return (Criteria) this;
        }

        public Criteria andBuserIdLessThan(String value) {
            addCriterion("buser_id <", value, "buserId");
            return (Criteria) this;
        }

        public Criteria andBuserIdLessThanOrEqualTo(String value) {
            addCriterion("buser_id <=", value, "buserId");
            return (Criteria) this;
        }

        public Criteria andBuserIdLike(String value) {
            addCriterion("buser_id like", value, "buserId");
            return (Criteria) this;
        }

        public Criteria andBuserIdNotLike(String value) {
            addCriterion("buser_id not like", value, "buserId");
            return (Criteria) this;
        }

        public Criteria andBuserIdIn(List<String> values) {
            addCriterion("buser_id in", values, "buserId");
            return (Criteria) this;
        }

        public Criteria andBuserIdNotIn(List<String> values) {
            addCriterion("buser_id not in", values, "buserId");
            return (Criteria) this;
        }

        public Criteria andBuserIdBetween(String value1, String value2) {
            addCriterion("buser_id between", value1, value2, "buserId");
            return (Criteria) this;
        }

        public Criteria andBuserIdNotBetween(String value1, String value2) {
            addCriterion("buser_id not between", value1, value2, "buserId");
            return (Criteria) this;
        }

        public Criteria andPvareaidIsNull() {
            addCriterion("pvareaid is null");
            return (Criteria) this;
        }

        public Criteria andPvareaidIsNotNull() {
            addCriterion("pvareaid is not null");
            return (Criteria) this;
        }

        public Criteria andPvareaidEqualTo(String value) {
            addCriterion("pvareaid =", value, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andPvareaidNotEqualTo(String value) {
            addCriterion("pvareaid <>", value, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andPvareaidGreaterThan(String value) {
            addCriterion("pvareaid >", value, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andPvareaidGreaterThanOrEqualTo(String value) {
            addCriterion("pvareaid >=", value, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andPvareaidLessThan(String value) {
            addCriterion("pvareaid <", value, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andPvareaidLessThanOrEqualTo(String value) {
            addCriterion("pvareaid <=", value, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andPvareaidLike(String value) {
            addCriterion("pvareaid like", value, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andPvareaidNotLike(String value) {
            addCriterion("pvareaid not like", value, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andPvareaidIn(List<String> values) {
            addCriterion("pvareaid in", values, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andPvareaidNotIn(List<String> values) {
            addCriterion("pvareaid not in", values, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andPvareaidBetween(String value1, String value2) {
            addCriterion("pvareaid between", value1, value2, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andPvareaidNotBetween(String value1, String value2) {
            addCriterion("pvareaid not between", value1, value2, "pvareaid");
            return (Criteria) this;
        }

        public Criteria andDeviceIsNull() {
            addCriterion("device is null");
            return (Criteria) this;
        }

        public Criteria andDeviceIsNotNull() {
            addCriterion("device is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceEqualTo(String value) {
            addCriterion("device =", value, "device");
            return (Criteria) this;
        }

        public Criteria andDeviceNotEqualTo(String value) {
            addCriterion("device <>", value, "device");
            return (Criteria) this;
        }

        public Criteria andDeviceGreaterThan(String value) {
            addCriterion("device >", value, "device");
            return (Criteria) this;
        }

        public Criteria andDeviceGreaterThanOrEqualTo(String value) {
            addCriterion("device >=", value, "device");
            return (Criteria) this;
        }

        public Criteria andDeviceLessThan(String value) {
            addCriterion("device <", value, "device");
            return (Criteria) this;
        }

        public Criteria andDeviceLessThanOrEqualTo(String value) {
            addCriterion("device <=", value, "device");
            return (Criteria) this;
        }

        public Criteria andDeviceLike(String value) {
            addCriterion("device like", value, "device");
            return (Criteria) this;
        }

        public Criteria andDeviceNotLike(String value) {
            addCriterion("device not like", value, "device");
            return (Criteria) this;
        }

        public Criteria andDeviceIn(List<String> values) {
            addCriterion("device in", values, "device");
            return (Criteria) this;
        }

        public Criteria andDeviceNotIn(List<String> values) {
            addCriterion("device not in", values, "device");
            return (Criteria) this;
        }

        public Criteria andDeviceBetween(String value1, String value2) {
            addCriterion("device between", value1, value2, "device");
            return (Criteria) this;
        }

        public Criteria andDeviceNotBetween(String value1, String value2) {
            addCriterion("device not between", value1, value2, "device");
            return (Criteria) this;
        }

        public Criteria andOrdernumLikeInsensitive(String value) {
            addCriterion("upper(ordernum) like", value.toUpperCase(), "ordernum");
            return (Criteria) this;
        }

        public Criteria andRemarkLikeInsensitive(String value) {
            addCriterion("upper(remark) like", value.toUpperCase(), "remark");
            return (Criteria) this;
        }

        public Criteria andIdcodeLikeInsensitive(String value) {
            addCriterion("upper(idcode) like", value.toUpperCase(), "idcode");
            return (Criteria) this;
        }

        public Criteria andPayTradeNoLikeInsensitive(String value) {
            addCriterion("upper(pay_trade_no) like", value.toUpperCase(), "payTradeNo");
            return (Criteria) this;
        }

        public Criteria andExtIdcodeLikeInsensitive(String value) {
            addCriterion("upper(ext_idcode) like", value.toUpperCase(), "extIdcode");
            return (Criteria) this;
        }

        public Criteria andAdditionalInfoLikeInsensitive(String value) {
            addCriterion("upper(additional_info) like", value.toUpperCase(), "additionalInfo");
            return (Criteria) this;
        }

        public Criteria andBuyernameLikeInsensitive(String value) {
            addCriterion("upper(buyername) like", value.toUpperCase(), "buyername");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneLikeInsensitive(String value) {
            addCriterion("upper(buyerphone) like", value.toUpperCase(), "buyerphone");
            return (Criteria) this;
        }

        public Criteria andExt1LikeInsensitive(String value) {
            addCriterion("upper(ext1) like", value.toUpperCase(), "ext1");
            return (Criteria) this;
        }

        public Criteria andExt2LikeInsensitive(String value) {
            addCriterion("upper(ext2) like", value.toUpperCase(), "ext2");
            return (Criteria) this;
        }

        public Criteria andExt3LikeInsensitive(String value) {
            addCriterion("upper(ext3) like", value.toUpperCase(), "ext3");
            return (Criteria) this;
        }

        public Criteria andSourceLikeInsensitive(String value) {
            addCriterion("upper(source) like", value.toUpperCase(), "source");
            return (Criteria) this;
        }

        public Criteria andChannelLikeInsensitive(String value) {
            addCriterion("upper(channel) like", value.toUpperCase(), "channel");
            return (Criteria) this;
        }

        public Criteria andOrderRouteLikeInsensitive(String value) {
            addCriterion("upper(order_route) like", value.toUpperCase(), "orderRoute");
            return (Criteria) this;
        }

        public Criteria andBuyernameEnLikeInsensitive(String value) {
            addCriterion("upper(buyername_en) like", value.toUpperCase(), "buyernameEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneEnLikeInsensitive(String value) {
            addCriterion("upper(buyerphone_en) like", value.toUpperCase(), "buyerphoneEn");
            return (Criteria) this;
        }

        public Criteria andBuyerphoneHashLikeInsensitive(String value) {
            addCriterion("upper(buyerphone_hash) like", value.toUpperCase(), "buyerphoneHash");
            return (Criteria) this;
        }

        public Criteria andAutousernameLikeInsensitive(String value) {
            addCriterion("upper(autoUserName) like", value.toUpperCase(), "autousername");
            return (Criteria) this;
        }

        public Criteria andStatisticsinfoLikeInsensitive(String value) {
            addCriterion("upper(statisticsInfo) like", value.toUpperCase(), "statisticsinfo");
            return (Criteria) this;
        }

        public Criteria andBatchnoLikeInsensitive(String value) {
            addCriterion("upper(batchNo) like", value.toUpperCase(), "batchno");
            return (Criteria) this;
        }

        public Criteria andBuserIdLikeInsensitive(String value) {
            addCriterion("upper(buser_id) like", value.toUpperCase(), "buserId");
            return (Criteria) this;
        }

        public Criteria andPvareaidLikeInsensitive(String value) {
            addCriterion("upper(pvareaid) like", value.toUpperCase(), "pvareaid");
            return (Criteria) this;
        }

        public Criteria andDeviceLikeInsensitive(String value) {
            addCriterion("upper(device) like", value.toUpperCase(), "device");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}